package com.ling.pl.autoproject.definition.view.model;

import com.ling.pl.core.commons.annotation.Dict;
import com.ling.pl.core.commons.annotation.ModelProperty;

import javax.persistence.Column;

public class ViewLogic {

    @Column(name = "NAME", length = 150)
    @ModelProperty(comment = "处理标识")
    String name;

    @Column(name = "VIEW_ID", length = 36)
    @ModelProperty(comment = "实体id")
    String viewId;

    @Column(name = "TRIGGER_TYPE", length = 150)
    @ModelProperty(comment = "出发类型")
    @Dict(code = "builder.view.triggerType", des = "定时器触发,视图事件触发,自定义")
    String triggerType;

    //定时器触发
    @Column(name = "TIME_OUT")
    @ModelProperty(comment = "时间间隔")
    Integer timeOut;

    //视图事件触发
    @Column(name = "VIEW_COMPONENT_ID", length = 36)
    @ModelProperty(comment = "事件部件")
    String viewComponentId;

    @Column(name = "EVENT_NAME", length = 150)
    @ModelProperty(comment = "事件名称")
    String eventName;

    @Column(name = "LOGIC_TYPE", length = 150)
    @ModelProperty(comment = "视图逻辑类型")
    @Dict(code = "builder.view.logicType", des = "实体视图逻辑,系统视图逻辑")
    String logicType;

    @Column(name = "LOGIC_ID", length = 36)
    @ModelProperty(comment = "事件部件")
    String logicId;

    @Column(name = "SORT_ORDER")
    @ModelProperty(comment = "排序")
    Integer sortOrder;

    @Column(name = "PARAM1", length = 150)
    @ModelProperty(comment = "逻辑参数")
    String param1;

    @Column(name = "PARAM2", length = 150)
    @ModelProperty(comment = "逻辑参数2")
    String param2;

    @Column(name = "REMARK", length = 500)
    @ModelProperty(comment = "备注")
    String remark;
}
